From 6282e799d8b9e202ef37044c0953e0306162f459 Mon Sep 17 00:00:00 2001 From: Christian Persch Date: Mon, 27 Nov 2006 21:17:19 +0000 Subject: [PATCH] Notify when the screen changes. Bug #379793. 2006-11-27 Christian Persch * gtk/gtkstatusicon.c: Notify when the screen changes. Bug #379793. --- ChangeLog | 4 ++++ gtk/gtkstatusicon.c | 16 ++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/ChangeLog b/ChangeLog index d83a413931..fff6d2da1c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2006-11-27 Christian Persch + + * gtk/gtkstatusicon.c: Notify when the screen changes. Bug #379793. + Mon Nov 27 12:27:06 2006 Tim Janik * gtk/gtktextview.c: applied patch by Colin Leroy for diff --git a/gtk/gtkstatusicon.c b/gtk/gtkstatusicon.c index 3fbada5b70..7ed3cb754a 100755 --- a/gtk/gtkstatusicon.c +++ b/gtk/gtkstatusicon.c @@ -121,6 +121,8 @@ static void gtk_status_icon_get_property (GObject *object, #ifdef GDK_WINDOWING_X11 static void gtk_status_icon_size_allocate (GtkStatusIcon *status_icon, GtkAllocation *allocation); +static void gtk_status_icon_screen_changed (GtkStatusIcon *status_icon, + GdkScreen *old_screen); #endif static gboolean gtk_status_icon_button_press (GtkStatusIcon *status_icon, GdkEventButton *event); @@ -411,6 +413,8 @@ gtk_status_icon_init (GtkStatusIcon *status_icon) g_signal_connect_swapped (priv->tray_icon, "button-press-event", G_CALLBACK (gtk_status_icon_button_press), status_icon); + g_signal_connect_swapped (priv->tray_icon, "screen-changed", + G_CALLBACK (gtk_status_icon_screen_changed), status_icon); priv->image = gtk_image_new (); gtk_container_add (GTK_CONTAINER (priv->tray_icon), priv->image); @@ -971,6 +975,18 @@ gtk_status_icon_size_allocate (GtkStatusIcon *status_icon, } } +static void +gtk_status_icon_screen_changed (GtkStatusIcon *status_icon, + GdkScreen *old_screen) +{ + GtkStatusIconPrivate *priv = status_icon->priv; + + if (gtk_widget_get_screen (priv->tray_icon) != old_screen) + { + g_object_notify (G_OBJECT (status_icon), "screen"); + } +} + #endif static gboolean -- 2.30.2